# -*- coding: utf-8 -*-
"""
@Time    : 2024/7/4 15:17 
@Author  : ZhangShenao 
@File    : custom_exception.py 
@Desc    : 自定义异常
自定义异常,继承Exception类
"""


class IllegalInputError(Exception):
    """非法输入异常 """

    def __init__(self, value):
        """构造函数"""

        # 调用父类的构造函数
        super().__init__()

        # 初始化异常信息
        self.__value = value

    def __str__(self):
        """重写__str__函数,在打印时输出自定义信息"""
        return f'illegal input for {self.__value}'


def use_custom_exception():
    """使用自定义异常"""

    try:
        # 抛出自定义异常
        raise IllegalInputError(-100)
    except IllegalInputError as err:
        print(f'IllegalInputError: {err}')


if __name__ == '__main__':
    use_custom_exception()
